class Solution {//leetcode1143——最长公共子序列
public:
    int longestCommonSubsequence(string text1, string text2) {
        int m=text1.size();
        int n=text2.size();
        vector<vector<int>> dp(m+1,vector<int>(n+1,0));
        text1=" "+text1;
        text2=" "+text2;

        for(int i=1;i<m+1;i++){
            for(int j=1;j<n+1;j++){
                if(text1[i]==text2[j]) dp[i][j]=dp[i-1][j-1]+1;
                else dp[i][j]=max(dp[i-1][j],dp[i][j-1]); 
            }
        }
        return dp[m][n];
    }
};